/*
 * World.h
 * Models the world (comprising the environment the sprites which
 * make up the world inhabit). Also exists as the main conduit of
 * information from the controllers to the model. Can be loaded
 * from a file as a "level".
 */

#ifndef __WORLD_H
#define __WORLD_H

#include <string>
#include "common.h" 
#include "../model/Hero.h"
#include "../model/Sprite.h"

class World {
	public:
		// Temporary "quick" method to create a world:
		// creates an empty world with that image as
		// the background.
		World(const std::string& imagePath);
		~World();

		void paint();
	
	private:
		CL_Surface 	*surface_background;

		// The hero character
		Hero		*hero;

		// A block.
		Sprite		*block;
};

#endif
